package generatorJsonHtml;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * <p>
 * 项目
 * </p>
 *
 * @author championsoft
 * @since 2020-12-22
 */
@Data
@Accessors(chain = true)
@TableName("prj_project")
public class PrjProject {

    private static final long serialVersionUID = 1L;

    @TableId(value = "PROJECT_ID", type = IdType.UUID)
    private String projectId;

    @TableField("CODE")
    private String code;

    @TableField("PROJECT_NAME")
    private String projectName;

    /**
     * 数据字典CONSTRUCT_TYPE
     */
    @TableField("CONSTRUCT_TYPE")
    private String constructType;

    /**
     * 数据字典BUILDING_STRUCTURE
     */
    @TableField("BUILDING_STRUCTURE")
    private String buildingStructure;

    /**
     * 数据字典AGENT_TYPE
     */
    @TableField("AGENT_TYPE")
    private String agentType;

    /**
     * 枚举SaleStatusEnum，、预售、转为现售
     */
    @TableField("SALE_STATUS")
    private Integer saleStatus;

    @TableField("COMPANY_NAME")
    private String companyName;

    /**
     * 开发商ID(部门ID)
     */
    @TableField("COMPANY_ID")
    private String companyId;

    @TableField("CONTRACTOR")
    private String contractor;

    @TableField("CONTRACT_PHONE")
    private String contractPhone;

    /**
     * 区域表
     */
    @TableField("PROVINCE")
    private String province;

    /**
     * 区域表
     */
    @TableField("CITY")
    private String city;

    /**
     * 区域表
     */
    @TableField("AREA")
    private String area;

    @TableField("STREET_ADDRESS")
    private String streetAddress;

    @TableField("ADDRESS")
    private String address;

    @TableField("WATCH_ADDRESS")
    private String watchAddress;

    @TableField("INTRODUCE")
    private String introduce;

    @TableField("TRAFFIC_GUIDANCE")
    private String trafficGuidance;

    @TableField("COMPLETE_TIME")
    private LocalDateTime completeTime;

    @TableField("SALE_TIME")
    private LocalDateTime saleTime;
    /**
     * VR资源链接
     */
    @TableField("VR_LINK")
    private String vrLink;

    /**
     * 经度
     */
    @TableField("LONGITUDE")
    private Double longitude;

    /**
     * 纬度
     */
    @TableField("LATITUDE")
    private Double latitude;

    @TableField("MEMO")
    private String memo;

    /**
     * 审核状态
     */
    @TableField("P_STATUS")
    private Integer pStatus;

    /**
     * 创建人ID
     */
    @TableField("CREATE_USER_ID")
    private String createUserId;

    /**
     * 创建人名称
     */
    @TableField("CREATE_USER_NAME")
    private String createUserName;

    /**
     * 创建时间
     */
    @TableField("CREATE_TIME")
    private LocalDateTime createTime;

    /**
     * 修改人ID
     */
    @TableField("MODIFY_USER_ID")
    private String modifyUserId;

    /**
     * 修改人名称
     */
    @TableField("MODIFY_USER_NAME")
    private String modifyUserName;

    /**
     * 修改时间
     */
    @TableField("MODIFY_TIME")
    private LocalDateTime modifyTime;

    @TableField(exist = false)
    private Integer houseNumber;

    /**
     * 省名称
     */
    @TableField(exist = false)
    private String provinceName;

    /**
     * 市名称
     */
    @TableField(exist = false)
    private String cityName;

    /**
     * 区名称
     */
    @TableField(exist = false)
    private String areaName;

    /**
     * 筹建类型名称
     */
    @TableField(exist = false)
    private String constructTypeName;


    /**
     * 地块取得方式
     */
    @TableField("LAND_GET_METHOD")
    private String landGetMethod;

    /**
     * 前期物业服务单位
     */
    @TableField("SERVICE_COMPANY")
    private String serviceCompany;

    /**
     * 物业服务合同期限起始
     */
    @TableField("CONTRACT_START_TIME")
    private LocalDateTime contractStartTime;

    /**
     * 物业服务合同期限结束
     */
    @TableField("CONTRACT_END_TIME")
    private LocalDateTime contractEndTime;

    /**
     * 物业服务费用
     */
    @TableField("PROPERTY_COST")
    private BigDecimal propertyCost;

    /**
     * 是否办理大确权
     */
    @TableField("IS_PROPERTY_RIGHT")
    private Boolean isPropertyRight;

    /**
     * 产权单位名称ID
     */
    @TableField("PROPERTY_COMPANY_ID")
    private String propertyCompanyId;

    /**
     * 产权单位名称
     */
    @TableField("PROPERTY_COMPANY")
    private String propertyCompany;

    /**
     * 大确权编号
     */
    @TableField("PROPERTY_NUMBER")
    private String propertyNumber;

    /**
     * 预约看房说明
     */
    @TableField("LOOK_HOUSE_DESC")
    private String lookHouseDesc;

    /**
     * 附件ID
     */
    @TableField("PROJECT_ATTACHMENT_ID")
    private String projectAttachmentId;

    /**
     * 草稿projectId
     */
    @TableField("DRAFT_PROJECT_ID")
    private String draftProjectId;

    /**
     * 是否发布到APP:1-是；0-否
     */
    @TableField("IS_PUBLISH")
    private Integer isPublish;

    /**
     * 项目名称
     */
    @TableField("XMMC")
    private String xmmc;

    /**
     * 项目批次
     */
    @TableField("XMPC")
    private String xmpc;

    /**
     * 项目ID
     */
    @TableField("XMID")
    private String xmid;
}
